home *** CD-ROM | disk | FTP | other *** search
- unit Array7U;
-
- interface
-
- uses
- WinProcs, WinTypes, Messages, SysUtils, Classes, Graphics, Controls,
- Forms, Dialogs, Grids, StdCtrls;
-
- type
- TArray7MainForm = class(TForm)
- ListBox1: TListBox;
- btnResizeArray: TButton;
- btnFillArray: TButton;
- procedure FormCreate(Sender: TObject);
- procedure btnResizeArrayClick(Sender: TObject);
- procedure btnFillArrayClick(Sender: TObject);
- private
- MyArray: Variant;
- procedure DisplayArray;
- end;
-
- var
- Array7MainForm: TArray7MainForm;
-
- implementation
-
- {$R *.DFM}
-
- procedure TArray7MainForm.FormCreate(Sender: TObject);
- var
- Tmp: Integer;
- begin
- Tmp := StrToInt(InputBox(
- 'Enter your array dimensions',
- 'Number of elements:', '10'));
- MyArray := VarArrayCreate([0, Pred(Tmp)], varInteger);
- btnFillArray.Click; { Pretend to push the array filling button }
- DisplayArray
- end;
-
- procedure TArray7MainForm.btnResizeArrayClick(Sender: TObject);
- var
- Tmp: Integer;
- begin
- Tmp := StrToInt(InputBox(
- 'Enter your new array dimensions',
- 'Number of elements:', '20'));
- VarArrayRedim(MyArray, Pred(Tmp));
- DisplayArray
- end;
-
- procedure TArray7MainForm.btnFillArrayClick(Sender: TObject);
- var
- Loop: Integer;
- begin
- for Loop := VarArrayLowBound(MyArray, 1) to
- VarArrayHighBound(MyArray, 1) do
- MyArray[Loop] := Loop;
- DisplayArray
- end;
-
- procedure TArray7MainForm.DisplayArray;
- var
- Loop: Integer;
- begin
- with ListBox1, Items do
- begin
- BeginUpdate;
- try
- Clear;
- for Loop := VarArrayLowBound(MyArray, 1) to
- VarArrayHighBound(MyArray, 1) do
- Add(IntToStr(MyArray[Loop]));
- ItemIndex := VarArrayHighBound(MyArray, 1)
- finally
- EndUpdate
- end
- end
- end;
-
- end.
-